package com.teira.rhrrealstate.entity;

import java.io.Serializable;

import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;

import org.hibernate.validator.NotNull;
import org.jboss.seam.annotations.Name;

@Entity
@Name("imagen")
public class Imagen implements Serializable
{
	private Long imagenId;
	@NotNull @ManyToOne 
	private Inmueble inmueble;
	private String nombre;
	private long longitud;
	private String contentType;
	private byte[] data;
	
	@Id 
	@SequenceGenerator(name="my_seq", sequenceName="IMAGEN_SEQ")
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="my_seq")
	public Long getImagenId() {
		return imagenId;
	}
	public void setImagenId(Long imagenId) {
		this.imagenId = imagenId;
	}
	
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public long getLongitud() {
		return longitud;
	}
	public void setLongitud(long longitud) {
		this.longitud = longitud;
	}
	public String getContentType() {
		return contentType;
	}
	public void setContentType(String contentType) {
		this.contentType = contentType;
	}
	
	@Lob
	@Column(length = 2147483647)
	@Basic(fetch = FetchType.LAZY)
	public byte[] getData() {
		return data;
	}
	public void setData(byte[] data) {
		this.data = data;
	}
	public Inmueble getInmueble() {
		return inmueble;
	}
	public void setInmueble(Inmueble inmueble) {
		this.inmueble = inmueble;
	}
	
	

}
